package sistema.contexto.problemas;

import java.util.Collection;

import sistema.contexto.problemas.dao.ProblemaDAO;

/**
 * 
 * @author Thiago Emmanuel Pereira da Cunha Silva, thiago.manel@gmail.com
 * @since 15/04/2006
 */
public class ProblemasBL {
	
	private ProblemaDAO dao;
	
	/**
	 * 
	 * @param DAO
	 */
	public ProblemasBL(ProblemaDAO DAO) {
		dao = DAO;
	}
	
	/**
	 * 
	 * @param identificador
	 * @param espec
	 * @param idLinguagem
	 * @param idValidador
	 * @param pathInputFile
	 * @param pathOutputFile
	 */
	public void criaProblema(String identificador, String espec, String idLinguagem, 
											     String idValidador, String pathInputFile, String pathOutputFile) {
		
		Problema problema = new Problema(identificador, espec, idLinguagem, idValidador, 
												    					 pathInputFile, pathOutputFile);
		dao.addProblema(problema);
	}

	/**
	 * 
	 * @return
	 */
	public String listaProblemas() {
		StringBuffer saida = new StringBuffer();
		Collection<ProblemaIF> problemas = dao.getProblemas();
		for (ProblemaIF problema : problemas) {
			saida.append("\n"+problema);
		}
		return saida.toString();
	}
	
	/**
	 * 
	 * @param id
	 * @return
	 */
	public ProblemaIF getProblema(String id){
		return dao.getProblema(id);
	}
	
	/**
	 * 
	 * @return
	 */
	public Collection<ProblemaIF> getProblemas(){
		return dao.getProblemas();
	}

	public void zerarDados() {
		this.dao.zerarDados();
	}
	
}
